// pages/index/index.js
import { useStore } from '../../ya/store/index'
Page({

  /**
   * 页面的初始数据
   */
  data: {
    userInfo: null // 用于页面渲染的数据
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    // 1. 获取store实例（放在生命周期方法内）
    this.userStore = useStore('user')
    
    // 2. 访问状态
    console.log('用户信息:', this.userStore.state.userInfo)
    
    // 3. 将状态同步到页面data（用于WXML渲染）
    this.setData({
      userInfo: this.userStore.state.userInfo
    })
    
    // 4. 监听状态变化（可选）
    this.userStore.onChange(this.handleUserStoreChange)
  },
    /**
   * 监听store变化的回调函数
   */
  handleUserStoreChange(newState) {
    console.log('用户数据变化:', newState)
    // 更新页面数据
    this.setData({
      userInfo: newState.userInfo
    })
  },
  /**
   * 自定义登录方法
   */
  handleLogin() {
    // 5. 调用store方法
    this.userStore.login({
      token: 'xxx',
      name: '用户名'
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {
    this.userStore.offChange(this.handleUserStoreChange)
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})